﻿#ifndef BASEDIALOG_H
#define BASEDIALOG_H

#include <QDialog>

//基类对话框，用于完成设置页面的基础布局和样式
class BaseDialog : public QDialog
{
    Q_OBJECT
public:
    explicit BaseDialog(QWidget *parent = nullptr, QString title = "");

    // 设置内容展示控件
    void setContentWidget(QWidget* widget);

protected:
    // 鼠标点击事件
    void mousePressEvent(QMouseEvent* e) override;
    // 鼠标移动事件
    void mouseMoveEvent(QMouseEvent* e) override;
    // 鼠标弹起事件
    void mouseReleaseEvent(QMouseEvent*) override;

private:
    // 标题栏
    class QLabel* m_titleBar = nullptr;
    // 最后记录的点，用于移动对话框
    QPoint m_lastPoint;
};

#endif // BASEDIALOG_H
